package thread;

public class ThreadDemo21 {
    public static void main(String[] args) {
        Object locker = new Object();
        Thread t = new Thread(() ->{
           synchronized (locker) {//这个加锁是可以顺利获取到的
               //加锁计数器++
               synchronized (locker) {//这个不行,也因为locker对象已经出现加锁状态,但是因为这俩次加锁都是同一个线程,所以不会堵塞,这个叫做"可重入"
                   //枷锁计数器++
                   //执行出来是怎么样的
                   System.out.println("hello");
               }//不是在这里解锁  把计数器--
           }//锁是在这里解锁,最外层的{进行加锁,最外层的}进行解锁 ,计数器--,归零解锁
        });
        t.start();
        //对于可重入锁来说:
        //1.当前这个锁是被哪个线程持有的
        //2.加锁次数 的计数器
    }
}
